package com.hsgene.common.util.exception;

/**
 * 错误码定义
 *
 * @author wangbing
 * @version 1.0, 2018/6/22
 */
public interface ErrorCode {

    /**
     * 获取错误码
     *
     * @return 错误码code定义，必须大于0
     */
    int getCode();

    /**
     * 获取错误信息
     *
     * @return 错误信息
     */
    String getMessage();

    /**
     * 获取错误描述
     *
     * @return 错误描述
     */
    String getDescription();

    /**
     * equals判断 code相等即为equals
     *
     * @param other ErrorCode
     * @return true
     */
    default boolean equals(ErrorCode other) {
        if (other == null) {
            return false;
        }
        return this.getCode() == other.getCode();
    }
}
